SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO
CREATE PROC [dbo].[SP_TXMVTO_CNTB_I09]        
/*-------------------------------------------------------------------*/        
/*----- Empresa           : OFISIS S.A.                          ----*/        
/*----- Cliente           : OFISIS S.A.                          ----*/        
/*----- Sistema           : Contabilidad                         ----*/        
/*----- Modulo            : Empresa                              ----*/        
/*----- Programa          : Copia de vouchers                    ----*/        
/*----- Nombre            : SP_TXMVTO_CNTB_I09                   ----*/        
/*----- Script            : TXMVTO_CNTB                          ----*/        
/*----- Desarrollado por  : Israel Estrada Polanco               ----*/        
/*----- Fecha             : 08/08/1997                           ----*/        
/*----- Base de Datos     : MS SQL Server                        ----*/        
/*----- Version BD        : 6.5                                  ----*/        
/*--------------------------------------------------------------------------*/     
/*---- Modificado 1   : Gustavo Espinoza                                ----*/      
/*---- Fecha Modificacion : 19/08/2005                                  ----*/      
/*---- Detalle    : Update a los datos de origen en las lineas de gestion----*/      
/*--------------------------------------------------------------------------*/     
/*--------------------------------------------------------------------------*/      
/*---- Modificado 2   : pdgv                                            ----*/      
/*---- Fecha Modificacion : 15/08/2007                                  ----*/      
/*---- Detalle    : copia datos PDB, DETRACCION,  RTPS                  ----*/      
/*--------------------------------------------------------------------------*/   
/*--------------------------------------------------------------------------*/      
/*---- Modificado 3   : pdgv                                            ----*/      
/*---- Fecha Modificacion : 25/03/2008                                  ----*/      
/*---- Detalle    : valida el estado si_mvto_cntb segun parametro de aprobacion ----*/      
/*--------------------------------------------------------------------------*/   
/*-------------------------------------------------------------------*/        
/*----- Drop proc SP_TXMVTO_CNTB_I09                             ----*/        
/*----- Grant all on SP_TXMVTO_CNTB_I09 to PUBLIC                ----*/        
/*----- SP_TXMVTO_CNTB_I09                                       ----*/        
/*-------------------------------------------------------------------*/        
        
@ISCO_EMPR TD_VC_002,      
@ISCO_UNID_CTB1 TD_VC_003,        
@ISCO_USUA          TD_VC_008,        
@IDFE_USUA          TD_DT_001,          
@INNU_CNTB_EMP1 TD_IN_001_CONT,        
@ISCO_UNID_CTB2 TD_VC_003,        
@ISCO_OPRC_CTB1 TD_VC_003,        
@INNU_ANO1 TD_IN_004_ANNO,        
@INNU_MES1 TD_IN_002_MESE,        
@ISNU_AST1 TD_VC_010,        
@INNU_CNTB_EMP2 TD_IN_001_CONT,        
@ISCO_OPRC_CTB2 TD_VC_003,        
@INNU_ANO2 TD_IN_004_ANNO,        
@INNU_MES2 TD_IN_002_MESE,        
@ISNU_AST2 TD_VC_010,        
@ISCO_ACCI TD_VC_001        
as        
Declare   
@VSST_ASIE_APRO TD_VC_001,  
@VSST_ESTA  TD_VC_003  
  
Select @VSST_ASIE_APRO = IsNull(ST_ASIE_APRO, 'N')  
From TMPARA_CONT   
Where CO_EMPR = @ISCO_EMPR   
  
If @VSST_ASIE_APRO = 'N'  
 Begin   
  Select @VSST_ESTA = 'APR'  
 End   
Else   
 Begin   
  Select @VSST_ESTA = 'DIG'  
 End   
  
If @ISCO_ACCI = 'M'        
Begin        
 Insert Into TXMVTO_CNTB         
 ( CO_EMPR, NU_CNTB_EMPR, CO_UNID_CNTB, CO_OPRC_CNTB, NU_ANNO, NU_MESE, NU_ASTO,         
   NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR, TI_DOCU,         
   NU_DOCU, FE_DOCU, TI_CAMB, CO_MONE, FA_CAMB, TI_OPER, IM_MVTO_ORIG,        
   IM_MVTO_CNTB,DE_GLOS, NO_GIRA, CO_ORDE_SERV, SI_MVTO_CNTB, CO_UNID_ORIG,         
   CO_OPRC_ORIG, NU_ASTO_ORIG, NU_SECU_ORIG, CO_CNTA_ORIG, ST_OTRS,        
   FE_DOCU_VENC, FA_CAMB_DIAR, TI_DOCU_REFE, NU_DOCU_REFE, FE_DOCU_REFE, NU_PROC, NU_PROC_SECU,         
   FE_PROG_CHEQ, FE_ENTR_CHEQ, ST_IMPR_CHEQ, CO_CLAV_TAOR, ST_GEST, ST_REDO,         
   CO_TABL_ORIG, ST_FLAG, CO_TIPO_OPER, ST_DIFE_CAMB, ST_CANC_DOCU, ST_DIFE_MAYO,   
  
 ST_FORM_1062,ST_FORM_1262,ST_FORM_1662,NU_ORDE_FORM,CO_DEST,NU_DEST,CO_TIOP_DETR,CO_ACTI_DETR,  
 FE_PAGO_AGEN,TI_AUXI_EXTR,CO_AUXI_EXTR,CO_MEPA,TI_DOCU_DETR,NU_DOCU_DETR,FE_DOCU_DETR,  
 FE_INIC_PRES,FE_FINA_PRES,IM_MVTO_RETE,ST_IMPR_RETE,FE_PAGO,  
  
   CO_USUA_MODI, FE_USUA_MODI, CO_USUA_CREA, FE_USUA_CREA)        
 Select CO_EMPR, @INNU_CNTB_EMP2, @ISCO_UNID_CTB2, @ISCO_OPRC_CTB2, @INNU_ANO2,        
  @INNU_MES2,@ISNU_AST2, NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR,         
  TI_DOCU, NU_DOCU, FE_DOCU, TI_CAMB, CO_MONE, FA_CAMB, TI_OPER, IM_MVTO_ORIG,         
  IM_MVTO_CNTB, DE_GLOS, NO_GIRA, CO_ORDE_SERV, @VSST_ESTA, CO_UNID_ORIG, CO_OPRC_ORIG, NU_ASTO_ORIG,   
  NU_SECU_ORIG, CO_CNTA_ORIG, ST_OTRS,        
  FE_DOCU_VENC, FA_CAMB_DIAR, TI_DOCU_REFE, NU_DOCU_REFE, FE_DOCU_REFE, NULL, NULL,        
  FE_PROG_CHEQ, FE_ENTR_CHEQ, ST_IMPR_CHEQ, CO_CLAV_TAOR, ST_GEST, ST_REDO,         
  CO_TABL_ORIG, ST_FLAG, CO_TIPO_OPER, ST_DIFE_CAMB, ST_CANC_DOCU, ST_DIFE_MAYO,    
  
 ST_FORM_1062,ST_FORM_1262,ST_FORM_1662,NU_ORDE_FORM,CO_DEST,NU_DEST,CO_TIOP_DETR,CO_ACTI_DETR,  
 FE_PAGO_AGEN,TI_AUXI_EXTR,CO_AUXI_EXTR,CO_MEPA,TI_DOCU_DETR,NU_DOCU_DETR,FE_DOCU_DETR,  
 FE_INIC_PRES,FE_FINA_PRES,IM_MVTO_RETE,ST_IMPR_RETE,FE_PAGO,  
  
  @ISCO_USUA , @IDFE_USUA, @ISCO_USUA, @IDFE_USUA    
  From TXMVTO_CNTB        
  Where CO_EMPR = @ISCO_EMPR        
  and NU_CNTB_EMPR = @INNU_CNTB_EMP1        
  and CO_UNID_CNTB = @ISCO_UNID_CTB1        
  and CO_OPRC_CNTB = @ISCO_OPRC_CTB1        
  and NU_ANNO = @INNU_ANO1        
  and NU_MESE = @INNU_MES1        
  and NU_ASTO = @ISNU_AST1        
  and SI_MVTO_CNTB not in ('ELI', 'ANU')
End        
If @ISCO_ACCI != 'M'        
Begin        
 Insert Into TXMVTO_CNTB         
 ( CO_EMPR, NU_CNTB_EMPR, CO_UNID_CNTB, CO_OPRC_CNTB, NU_ANNO, NU_MESE, NU_ASTO,         
   NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR, TI_DOCU,         
   NU_DOCU, FE_DOCU, TI_CAMB, CO_MONE, FA_CAMB, TI_OPER, IM_MVTO_ORIG,        
   IM_MVTO_CNTB,DE_GLOS, NO_GIRA, CO_ORDE_SERV, SI_MVTO_CNTB, CO_UNID_ORIG,         
   CO_OPRC_ORIG, NU_ASTO_ORIG, NU_SECU_ORIG, CO_CNTA_ORIG, ST_OTRS, FE_DOCU_VENC, FA_CAMB_DIAR, TI_DOCU_REFE,       
   NU_DOCU_REFE, FE_DOCU_REFE, NU_PROC, NU_PROC_SECU, FE_PROG_CHEQ, FE_ENTR_CHEQ,       
   ST_IMPR_CHEQ, CO_CLAV_TAOR, ST_GEST, ST_REDO, CO_TABL_ORIG, ST_FLAG, CO_TIPO_OPER,       
   ST_DIFE_CAMB, ST_CANC_DOCU, ST_DIFE_MAYO,    
  
 ST_FORM_1062,ST_FORM_1262,ST_FORM_1662,NU_ORDE_FORM,CO_DEST,NU_DEST,CO_TIOP_DETR,CO_ACTI_DETR,  
 FE_PAGO_AGEN,TI_AUXI_EXTR,CO_AUXI_EXTR,CO_MEPA,TI_DOCU_DETR,NU_DOCU_DETR,FE_DOCU_DETR,  
 FE_INIC_PRES,FE_FINA_PRES,IM_MVTO_RETE,ST_IMPR_RETE,FE_PAGO,  
  
   CO_USUA_MODI, FE_USUA_MODI, CO_USUA_CREA, FE_USUA_CREA )        
 Select CO_EMPR, @INNU_CNTB_EMP2, @ISCO_UNID_CTB2, @ISCO_OPRC_CTB2, @INNU_ANO2,        
  @INNU_MES2,@ISNU_AST2, NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR,         
  TI_DOCU, NU_DOCU, FE_DOCU, TI_CAMB, CO_MONE, FA_CAMB, TI_OPER, IM_MVTO_ORIG,         
  IM_MVTO_CNTB, DE_GLOS, NO_GIRA, CO_ORDE_SERV, @VSST_ESTA, CO_UNID_ORIG, CO_OPRC_ORIG,       
  NU_ASTO_ORIG, NU_SECU_ORIG, CO_CNTA_ORIG, ST_OTRS, FE_DOCU_VENC, FA_CAMB_DIAR, TI_DOCU_REFE, NU_DOCU_REFE, FE_DOCU_REFE,       
  NULL, NULL, FE_PROG_CHEQ, FE_ENTR_CHEQ, ST_IMPR_CHEQ, NULL, ST_GEST, ST_REDO,         
  NULL, ST_FLAG, CO_TIPO_OPER, ST_DIFE_CAMB, ST_CANC_DOCU, ST_DIFE_MAYO,    
  
 ST_FORM_1062,ST_FORM_1262,ST_FORM_1662,NU_ORDE_FORM,CO_DEST,NU_DEST,CO_TIOP_DETR,CO_ACTI_DETR,  
 FE_PAGO_AGEN,TI_AUXI_EXTR,CO_AUXI_EXTR,CO_MEPA,TI_DOCU_DETR,NU_DOCU_DETR,FE_DOCU_DETR,  
 FE_INIC_PRES,FE_FINA_PRES,IM_MVTO_RETE,ST_IMPR_RETE,FE_PAGO,  
  
  @ISCO_USUA , @IDFE_USUA, @ISCO_USUA, @IDFE_USUA    
  From TXMVTO_CNTB        
  Where CO_EMPR = @ISCO_EMPR        
  and NU_CNTB_EMPR = @INNU_CNTB_EMP1        
  and CO_UNID_CNTB = @ISCO_UNID_CTB1        
  and CO_OPRC_CNTB = @ISCO_OPRC_CTB1        
  and NU_ANNO = @INNU_ANO1        
  and NU_MESE = @INNU_MES1        
  and NU_ASTO = @ISNU_AST1        
  and SI_MVTO_CNTB not in ('ELI', 'ANU')
End        
        
If @ISCO_ACCI = 'M'        
 Delete TXMVTO_CNTB        
 Where CO_EMPR = @ISCO_EMPR and         
       NU_CNTB_EMPR = @INNU_CNTB_EMP1 and        
   CO_UNID_CNTB = @ISCO_UNID_CTB1 And         
       CO_OPRC_CNTB = @ISCO_OPRC_CTB1 and         
       NU_ANNO = @INNU_ANO1 And         
       NU_MESE = @INNU_MES1 And         
       NU_ASTO = @ISNU_AST1        
  
/*------------Actualiza datos en lineas de Gestion----------------*/  
  Update TXMVTO_CNTB set  
  CO_UNID_ORIG = @ISCO_UNID_CTB2,  
  CO_OPRC_ORIG = @ISCO_OPRC_CTB2,  
  NU_ASTO_ORIG = @ISNU_AST2  
  From TXMVTO_CNTB      
  Where CO_EMPR    = @ISCO_EMPR      
  and NU_CNTB_EMPR = @INNU_CNTB_EMP2      
  and CO_UNID_CNTB = @ISCO_UNID_CTB2      
  and CO_OPRC_CNTB = @ISCO_OPRC_CTB2      
  and NU_ANNO = @INNU_ANO2  
  and NU_MESE = @INNU_MES2  
  and NU_ASTO = @ISNU_AST2  
  and ST_GEST = 'S'   
  
Update TCFECH_PROC        
 Set NU_ULTI_ASTO = Convert(int,@ISNU_AST2)        
  Where        
       CO_EMPR  = @ISCO_EMPR          And         
       NU_CNTB_EMPR  = @INNU_CNTB_EMP2 And        
       CO_UNID_CNTB  = @ISCO_UNID_CTB2 And         
       CO_OPRC_CNTB  = @ISCO_OPRC_CTB2 And         
       NU_ANNO   = @INNU_ANO2   And         
       NU_MESE   = @INNU_MES2        
return        
/*---------------------------------- Fin ----------------------------------------*/        
      
      
      
      
    
  
  
  
  
  
  
  
  
  

GO
